// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init()
const DB = cloud.database();

// 云函数入口函数
exports.main = async (event, context) => {
  let param={
    _openid:event._openid,
    man:event.man,
    way:event.way
  }
  const countResult = await DB.collection('dataList').where(param).count()
  // 总条数
  const total = countResult.total
  // 计算需分几次取
  const batchTimes = Math.ceil(total / 100)
  // 承载所有读操作的 promise 的数组
  const tasks = []
  for (let i = 0; i < batchTimes; i++) {
    const promise = DB.collection('dataList').where(param).skip(i * 100).limit(100).get()
    tasks.push(promise)
  }

  // return tasks;
  // 等待所有
  return (await Promise.all(tasks)).reduce((acc, cur) => {
    return {
      data: acc.data.concat(cur.data),
      errMsg: acc.errMsg,
    }
  })
}